/**
 * @file e4_t2_q2.c
 * @date 2022-03-09
 * 
 * @copyright Copyright (c) 2022 cnzyx MIT Licence
 * 
 */

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

void fun(char *str[100],int len){
    char *p;
    // 数组的属性可能退化成了二级指针的属性
    for(int i=0;i<len-1;i++){
        for(int j=0;j<len-i-1;j++){
            if(strcmp(*(str+j),*(str+j+1))>0){
                p=*(str+j+1);
                *(str+j+1)=*(str+j);
                *(str+j)=p;
            }
        }
    }
}

int main(int argc, char const *argv[])
{
    //UTF-8
    system("chcp 65001");

    int len=0;
    char *in_array[100];
    char *str[100][100];
    for(int i=0;i<100;i++){
        //请勿在c++中试验该特性
        in_array[i]=str[i];
    }
    printf("请输入数据，以空格隔开，以回车结束：\n");
    do{
        scanf("%s",in_array[len]);
        len++;
    }while(getchar()!='\n');
    printf("结果：");
    fun(in_array,len);
    for(int i=0;i<len;i++){
        printf("%s ",in_array[i]);
    }
    printf("\n");
    
    //Pause console
    system("pause");
    return 0;
}
